One key feature of applications is that they capture various kinds of information. For example, a user may provide information to an automated system via a web site or via an Interactive Voice Response (IVR) system. The Web site or IVR session that collects the information may consist of several different applications. At times, it is difficult to share information collected in one application with other applications that are written in a different programming language or because they run in different execution contexts. Moreover, sharing the information between the applications may require the applications to be re-written for the specific function of sharing information with other applications. The writing and re-writing of applications is expensive, time consuming, and often times difficult to do, especially with older applications.
This problem becomes even more prevalent as messages transmitted during communication sessions are transferred between various disparate applications. Each application involved in a communication session must be re-written to share information with other applications. What is needed is a system that allows easy sharing of information between disparate systems without having to rewrite the code for existing applications.